﻿using System;
using UnityEngine;
using UnityEngine.Events;

// Token: 0x020003B0 RID: 944
public class MoveableGuideDriveUI : MonoBehaviour
{
	// Token: 0x1700024A RID: 586
	// (get) Token: 0x06001784 RID: 6020 RVA: 0x0009C1F0 File Offset: 0x0009A3F0
	public bool isShow
	{
		get
		{
			return this.moveable.isActiveAndEnabled;
		}
	}

	// Token: 0x1700024B RID: 587
	// (get) Token: 0x06001785 RID: 6021 RVA: 0x0009C200 File Offset: 0x0009A400
	public bool isOpen
	{
		get
		{
			return this.moveable.State == MoveableUI.STATE.OPEN;
		}
	}

	// Token: 0x06001786 RID: 6022 RVA: 0x0009C210 File Offset: 0x0009A410
	public void Setup(string str, Vector3 pos, Vector3 eul, Vector3 scl, UnityAction<MoveableUI.STATE> moveableStateOnChange, UnityAction<Vector3, Vector3, Vector3> onMove)
	{
		this.moveable.SetTitle(str);
		this.moveable.AddOnChange(moveableStateOnChange);
		this.guideDrive.Setup(pos, eul, scl, onMove);
	}

	// Token: 0x06001787 RID: 6023 RVA: 0x0009C23C File Offset: 0x0009A43C
	public void SetLimit(bool isLimitPos, Vector3 limitPosMin, Vector3 limitPosMax, bool isLimitScl, Vector3 limitSclMin, Vector3 limitSclMax)
	{
		this.guideDrive.SetLimit(isLimitPos, limitPosMin, limitPosMax, isLimitScl, limitSclMin, limitSclMax);
	}

	// Token: 0x06001788 RID: 6024 RVA: 0x0009C254 File Offset: 0x0009A454
	public void SetUnlimit()
	{
		this.guideDrive.SetUnlimit();
	}

	// Token: 0x06001789 RID: 6025 RVA: 0x0009C264 File Offset: 0x0009A464
	public void Open()
	{
		this.moveable.Open();
	}

	// Token: 0x0600178A RID: 6026 RVA: 0x0009C274 File Offset: 0x0009A474
	public void Close()
	{
		this.moveable.Close();
	}

	// Token: 0x04001B27 RID: 6951
	[SerializeField]
	private MoveableUI moveable;

	// Token: 0x04001B28 RID: 6952
	[SerializeField]
	private GuideDriveUI guideDrive;
}
